<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta name="description" content="XML Descriptor" />
  <title>XML Descriptor</title>

  <style type="text/css">
    body {
      margin-top: 1.0em;
      background-color: #deeef7;
      font-family: Helvetica, Arial, FreeSans, san-serif;
      color: #000000;
    }
    #container {
      margin: 0 auto;
      width: 700px;
    }
    h1 { font-size: 3.8em; color: #211108; margin-bottom: 3px;margin-top:0px;padding-top:0px;}
    h1 .small { font-size: 0.4em; }
    h1 a { text-decoration: none }
    h2 { font-size: 1.5em; color: #211108; }
    h3 { text-align: center; color: #211108; }
    a { color: #211108; }
    .description { font-size: 1.2em; margin-bottom: 30px; margin-top: 30px; font-style: italic;}
    .download { float: right; }
    pre {padding: 0px;margin: 0px;padding-left: 10px;word-wrap:break-word;white-space: pre-wrap;}
    hr { border: 0; width: 80%; border-bottom: 1px solid #aaa}
    .footer { text-align: center; padding-top:30px; font-style: italic; }
    .code {border: dashed 1px gray; background-color: #f0f0f0;}
    .listing {padding: 10px;border: 1px solid black;width: 70%;font-family:"DejaVu Sans Mono", "Monaco", "Courier New", monospace;font-size:14px;}
    .summary {border:1px solid black;border-collapse:collapse;}
    table.summary td, table.summary th {border:1px solid black;padding: 4px;}
    .ext {color: Brown;font-weight: bold;}
  </style>

</head>

<body>
<a href="https://github.com/lvc/abi-compliance-checker"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>

<div id="container">

<h1>XML-Descriptor</h1>
<p/>
The library descriptor is a simple XML-file that specifies version number, paths to header files and shared libraries and optionally some other information.
<p/>

<table class='summary'><tr><td>
<div>Table of Contents</div>
<ul>
<li><a href="#Primary">Primary Sections</a></li>
<li><a href="#Optional">Optional Sections</a></li>
<li><a href="#Examples">Examples</a></li>
</ul>
</td></tr></table>

<a name="Primary"></a>
<h2>Primary Sections</h2>
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    /* Version of the library */
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /* The list of paths to header files or/and
       directories with header files, one per line */
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /* The list of paths to shared libraries or/and
       directories with shared libraries, one per line */
<span style='color:Green;'>&lt;/libs&gt;</span>
</pre>
</div>
<p/>

<a name="Optional"></a>
<h2>Optional Sections</h2>
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;include_paths&gt;</span>
    /* The list of paths to be searched for header files
       needed for compiling of library headers, one per
       line. NOTE: If you define this section then the tool
       will not automatically detect include paths */
<span style='color:Green;'>&lt;/include_paths&gt;</span>

<span style='color:Green;'>&lt;add_include_paths&gt;</span>
    /* The list of include paths that should be added
    to the automatically detected include paths, one per
    line */
<span style='color:Green;'>&lt;/add_include_paths&gt;</span>

<span style='color:Green;'>&lt;skip_include_paths&gt;</span>
    /* The list of include paths that will be removed from
    the list of automatically generated include paths, one
    per line */
<span style='color:Green;'>&lt;/skip_include_paths&gt;</span>

<span style='color:Green;'>&lt;gcc_options&gt;</span>
    /* Additional GCC options, one per line */
<span style='color:Green;'>&lt;/gcc_options&gt;</span>

<span style='color:Green;'>&lt;include_preamble&gt;</span>
    /* The list of header files that should be included
    before other headers, one per line. For example, it
    is a tree.h for libxml2 and ft2build.h for freetype2
    library */
<span style='color:Green;'>&lt;/include_preamble&gt;</span>

<span style='color:Green;'>&lt;defines&gt;</span>
    /* Add defines at the headers compiling stage, one per
    line:
        #define A B
        #define C D */
<span style='color:Green;'>&lt;/defines&gt;</span>

<span style='color:Green;'>&lt;add_namespaces&gt;</span>
    /* The list of namespaces that should be added to the
    alanysis  if the tool cannot find them automatically,
    one per line */ 
<span style='color:Green;'>&lt;/add_namespaces&gt;</span>

<span style='color:Green;'>&lt;skip_types&gt;</span>
    /* The list of data types, that
    should not be checked, one per line */
<span style='color:Green;'>&lt;/skip_types&gt;</span>

<span style='color:Green;'>&lt;skip_symbols&gt;</span>
    /* The list of functions (mangled/symbol names in C++),
    that should not be checked, one per line */
<span style='color:Green;'>&lt;/skip_symbols&gt;</span>

<span style='color:Green;'>&lt;skip_namespaces&gt;</span>
    /* The list of C++ namespaces, that
    should not be checked, one per line */
<span style='color:Green;'>&lt;/skip_namespaces&gt;</span>

<span style='color:Green;'>&lt;skip_constants&gt;</span>
    /* The list of constants that should not be checked,
    one name per line */
<span style='color:Green;'>&lt;/skip_constants&gt;</span>

<span style='color:Green;'>&lt;skip_headers&gt;</span>
    /* The list of header files and/or directories
    with header files that should not be checked, one per
    line */
<span style='color:Green;'>&lt;/skip_headers&gt;</span>

<span style='color:Green;'>&lt;skip_libs&gt;</span>
    /* The list of shared libraries and/or directories
    with shared libraries that should not be checked, one
    per line */
<span style='color:Green;'>&lt;/skip_libs&gt;</span>

<span style='color:Green;'>&lt;skip_including&gt;</span>
    /* The list of header files, that cannot be included
    directly (or non-self compiled ones), one per line */
<span style='color:Green;'>&lt;/skip_including&gt;</span>

<span style='color:Green;'>&lt;search_headers&gt;</span>
    /* List of directories to be searched
    for header files to automatically
    generate include paths, one per line */
<span style='color:Green;'>&lt;/search_headers&gt;</span>

<span style='color:Green;'>&lt;search_libs&gt;</span>
    /* List of directories to be searched
    for shared librariess to resolve
    dependencies, one per line */
<span style='color:Green;'>&lt;/search_libs&gt;</span>

<span style='color:Green;'>&lt;tools&gt;</span>
    /* List of directories with tools used
    for analysis (GCC toolchain), one per line */
<span style='color:Green;'>&lt;/tools&gt;</span>

<span style='color:Green;'>&lt;cross_prefix&gt;</span>
    /* GCC toolchain prefix.
    Examples:
        arm-linux-gnueabi
        arm-none-symbianelf */
<span style='color:Green;'>&lt;/cross_prefix&gt;</span>
</pre>
</div>
<p/>

<a name="Examples"></a>
<h2>Examples</h2>

libssh:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    0.3.4
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/libssh/0.3.4/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/libssh/0.3.4/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>
</pre>
</div>
<p/>

atk:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    1.28.0
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/atk-1.28.0/include/atk-1.0/atk/atk.h
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/atk-1.28.0/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/include/glib-2.0/
    /usr/lib/glib-2.0/include/
<span style='color:Green;'>&lt;/include_paths&gt;</span>
</pre>
</div>
<p/>

libxml2:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    2.7.6
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/libxml2-2.7.6/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/libxml2-2.7.6/lib/libxml2.so.2.7.6
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_preamble&gt;</span>
    tree.h
<span style='color:Green;'>&lt;/include_preamble&gt;</span>
</pre>
</div>
<p/>

libX11:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    1.3.2
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/libX11-1.3.2/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/libX11-1.3.2/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_preamble&gt;</span>
    Xlib.h
<span style='color:Green;'>&lt;/include_preamble&gt;</span>
</pre>
</div>
<p/>

BlackBerry 10 Native SDK:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    10
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /home/RIM/bbndk/target_10_0_9_1673/qnx6/usr/include/bb/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;search_headers&gt;</span>
    /home/RIM/bbndk/target_10_0_9_1673/qnx6/usr/include/
<span style='color:Green;'>&lt;/search_headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /home/RIM/bbndk/target_10_0_9_1673/qnx6/x86/usr/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;tools&gt;</span>
    /home/RIM/bbndk/host_10_0_9_404/linux/x86/usr/bin/
<span style='color:Green;'>&lt;/tools&gt;</span>

<span style='color:Green;'>&lt;cross_prefix&gt;</span>
    i486-pc-nto-qnx8.0.0
<span style='color:Green;'>&lt;/cross_prefix&gt;</span>
</pre>
</div>
<p/>

libQt5Core:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    5.5.0
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/Qt-5.5.0/include/QtCore
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/Qt-5.5.0/lib/libQt5Core.so.5.5.0
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/local/Qt-5.5.0/include/
<span style='color:Green;'>&lt;/include_paths&gt;</span>

<span style='color:Green;'>&lt;skip_headers&gt;</span>
    /private/
    qt_windows.h
    qatomic_*
    *_impl.h
<span style='color:Green;'>&lt;/skip_headers&gt;</span>
 
<span style='color:Green;'>&lt;gcc_options&gt;</span>
    -fvisibility=hidden
    -fvisibility-inlines-hidden
    -fPIC
    -Wall
    -W
    -D_REENTRANT
    -DQT_NO_CAST_FROM_ASCII
    -DQT_NO_CAST_TO_ASCII
    -DQT_NO_STL
    -DQT_SHARED
<span style='color:Green;'>&lt;/gcc_options&gt;</span>
</pre>
</div>
<p/>

libxslt:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    1.1.22
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/libxslt-1.1.22/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/libxslt-1.1.22/lib/libxslt.so
    /usr/local/libxslt-1.1.22/lib/libexslt.so
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/include/libxml2/
<span style='color:Green;'>&lt;/include_paths&gt;</span>

<span style='color:Green;'>&lt;include_preamble&gt;</span>
    xsltInternals.h
<span style='color:Green;'>&lt;/include_preamble&gt;</span>
</pre>
</div>
<p/>

libxml++:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    2.26.1
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/libxml++-2.26.1/include/
    /usr/local/libxml++-2.26.1/lib/libxml++-2.6/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/libxml++-2.26.1/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/include/glib-2.0/
    /usr/lib/glib-2.0/include/
    /usr/include/glibmm-2.4/
    /usr/lib/glibmm-2.4/include/
<span style='color:Green;'>&lt;/include_paths&gt;</span>
</pre>
</div>
<p/>

pango:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    1.26.0
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/pango-1.26.0/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/pango-1.26.0/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/include/glib-2.0/
    /usr/lib/glib-2.0/include/
    /usr/include/cairo/
    /usr/include/freetype2/
    /usr/include/X11/
<span style='color:Green;'>&lt;/include_paths&gt;</span>

<span style='color:Green;'>&lt;include_preamble&gt;</span>
    pango.h
<span style='color:Green;'>&lt;/include_preamble&gt;</span>
</pre>
</div>
<p/>

gtk+:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    2.18.4
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/gtk+-2.18.4/include/gtk-2.0/gdk/gdk.h
    /usr/local/gtk+-2.18.4/include/gtk-2.0/gtk/gtk.h
    /usr/local/gtk+-2.18.4/include/gail-1.0/
    /usr/local/gtk+-2.18.4/include/gtk-unix-print-2.0/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/gtk+-2.18.4/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/include/atk-1.0/
    /usr/include/glib-2.0/
    /usr/lib/glib-2.0/include/
    /usr/include/cairo/
    /usr/include/pango-1.0/
<span style='color:Green;'>&lt;/include_paths&gt;</span>
</pre>
</div>
<p/>

glib:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    2.22.2
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/glib-2.22.2/include/glib-2.0/glib.h
    /usr/local/glib-2.22.2/include/glib-2.0/glib-object.h
    /usr/local/glib-2.22.2/include/glib-2.0/gmodule.h
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/glib-2.22.2/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/local/glib-2.22.2/lib/glib-2.0/include/
<span style='color:Green;'>&lt;/include_paths&gt;</span>
</pre>
</div>
<p/>

libsoup:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    2.28.0
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/libsoup-2.28.0/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/libsoup-2.28.0/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/include/glib-2.0/
    /usr/lib/glib-2.0/include/
<span style='color:Green;'>&lt;/include_paths&gt;</span>
</pre>
</div>
<p/>

allegro:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    4.9.9.1
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/include/allegro5/allegro.h
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/lib/liballegro-4.9.9.so
<span style='color:Green;'>&lt;/libs&gt;</span>
</pre>
</div>
<p/>

mathgl:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    1.9.0.1
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/mathgl-1.9.0.1/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/mathgl-1.9.0.1/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_paths&gt;</span>
    /usr/local/gsl-1.9/include/
<span style='color:Green;'>&lt;/include_paths&gt;</span>
</pre>
</div>
<p/>

gsl:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    1.9
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/gsl-1.9/include/
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/gsl-1.9/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_preamble&gt;</span>
    stdlib.h
<span style='color:Green;'>&lt;/include_preamble&gt;</span>
</pre>
</div>
<p/>

libjpeg:
<div class='listing'>
<pre>
<span style='color:Green;'>&lt;version&gt;</span>
    7
<span style='color:Green;'>&lt;/version&gt;</span>

<span style='color:Green;'>&lt;headers&gt;</span>
    /usr/local/libjpeg-7/include/jpeglib.h
<span style='color:Green;'>&lt;/headers&gt;</span>

<span style='color:Green;'>&lt;libs&gt;</span>
    /usr/local/libjpeg-7/lib/
<span style='color:Green;'>&lt;/libs&gt;</span>

<span style='color:Green;'>&lt;include_preamble&gt;</span>
    stdio.h
<span style='color:Green;'>&lt;/include_preamble&gt;</span>
</pre>
</div>
<p/>

<div class="footer">
    get the source code on GitHub : <a href="https://github.com/lvc/abi-compliance-checker">lvc/abi-compliance-checker</a>
</div>

<br/>
<br/>

</div>
</body>
</html>
